﻿#define _CRT_SECURE_NO_WARNINGS 1
//牛客网每日一题
// 
//#include <stdio.h>
//int main()
//{
//    int left = 0, right = 0, count = 0;
//    scanf("%d%d", &left, &right);
//    for (int i = left; i <= right; i++)
//    {
//        int tmp = i;
//        while (tmp)
//        {
//            if (tmp % 10 == 2)
//            {
//                count++;
//            }
//            tmp /= 10;
//        }
//    }
//    printf("%d\n", count);
//    return 0;
//}


//#include <stdio.h>
//struct S1
//{
//	char c;
//	int i;
//};
//
//union S2
//{
//	char c;
//	int i;
//};
//
//int main()
//{
//	struct S1 s1 = { 0 };
//	union S2 s2 = { 0 };
//	printf("%zd\n", sizeof(s1));
//	printf("%zd\n", sizeof(s2));
//	return 0;
//}


//#include <stdio.h>
//union Un1
//{
//	char c[5];//占5个字节  对齐数：1（1<8）
//	int i;//占4个字节	   对齐数：4（4<8）
//	//这个联合体的大小应为4的整数倍，且最大成员为5——>8
//};
//union Un2
//{
//	short c[7];//占14个字节  对齐数：2（2<8）
//	int i;//占4个字节        对齐数：4（4<8）
//	//这个联合体的大小应为4的整数倍，且最大成员14——>16
//};
//int main()
//{
//	printf("%zd\n", sizeof(union Un1));
//	printf("%zd\n", sizeof(union Un2));
//	return 0;
//}


//struct gift_list
//{
//	//公共属性
//	int stock_number;//库存量
//	double price; //定价
//	int item_type;//商品类型
//
//	//特殊属性
//	char title[20];//书名
//	char author[20];//作者
//	int num_pages;//⻚数
//
//	char design[30];//设计
//	int colors;//颜⾊
//	int sizes;//尺⼨
//};


//struct gift_list
//{
//	int stock_number;//库存量
//	double price; //定价
//	int item_type;//商品类型
//
//	union//下面这些是三个结构体共用一块内存空间
//	{
//		//因为我们只需要在这里使用一次，所以可以使用匿名结构体
//		struct
//		{
//			char title[20];//书名
//			char author[20];//作者
//			int num_pages;//⻚数
//		}book;
//		struct
//		{
//			char design[30];//设计
//		}mug;
//		struct
//		{
//			char design[30];//设计
//			int colors;//颜色
//			int sizes;//尺寸
//		}shirt;
//	}item;
//};


//#include <stdio.h>
//int main()
//{
//	int a = 1;
//	if (*(char*)&a == 0)
//	{
//		printf("大端\n");
//	}
//	else
//	{
//		printf("小端\n");
//	}
//	return 0;
//}


//#include <stdio.h>
//int main()
//{
//	union un
//	{
//		char c;
//		int i;
//	}u = { .i = 1 };
//	if (u.c == 0)
//	{
//		printf("大端\n");
//	}
//	else
//	{
//		printf("小端\n");
//	}
//	return 0;
//}


//enum Day//星期
//{
//	Mon,
//	Tues,
//	Wed,
//	Thur,
//	Fri,
//	Sat,
//	Sun
//};
//
//enum Sex//性别
//{
//	MALE,
//	FEMALE,
//	SECRET
//};
//
//enum Color//颜⾊
//{
//	RED,
//	GREEN,
//	BLUE
//};


//#include <stdio.h>
//enum Color//颜⾊
//{
//	RED,
//	GREEN,
//	BLUE
//};
//
//int main()
//{
//	printf("%d\n", RED);
//	return 0;
//}


//enum color
//{
//    RED,
//    GREEN,
//    BLUE
//};
//
////在c++中会报错，因为3是整形，而c是枚举类型，不能赋值
//enum color c = 3;